Release Notes

(26th September 2001 - by Francois Beauregard, fbeauregard@pyxis-tech.com, and
Alain Bergevin, abergevin@pyxis-tech.com, of Pyxis Technologies Inc.)

This version include some refactoring, corrections and new features.
Here are the highlights:

  • CacheAdministrator has been split in 3. We have now AbstractCacheAdministrator, and ServletCacheAdministrator and GeneralCacheAdministrator extends it
  • Packages have been adjusted. We now have oscache.base, oscache.general and oscache.Servlet.
    Adjustement must be made to the oscache.tld
  • ServletCacheHashMap has been created in order to reflect specific needs for Servlets. It extends CacheHashMap
  • Support for multiple cache tag in a single page, without supplying a key. Nested cache tag are not yet supported (you need to manage keys in that case).
  • OSCache can now cache any objects (not only JSP content) using GeneralCacheAdministrator
  • GenerateKey now support suffixes (used to deal with multiple cache tags)
  • A complete JUnit test suite has been created for osCache, including a JSP and a Servlet
  • Added the required libraries for the test unit. The JUnit JAR has been upgraded to version 3.7
  • Required libraries are now HHTPUnit, Tidy, JUnit 3.7 and JUnitPerf
  • The cBuffer variable used for keyGeneration has been moved locally to GenerateKey since it was a threading issue
  • The build file has been modified to include test running
  • The flushAll method is now abstract since CacheAbstractAdministrator can't know all valid scopes
  • Removed the retry logic for disk cache read and write (not used anymore)
  • Fixed an issue with the needsRefresh method which returned an invalid value when invoked first by returning true and then invoked having to return false. Both case returned true.
  • The doStartTag method in CacheTag has been modified to prevent returning null when cache content is missing (cache file deleted)
  • The doAfterBody method in CacheTag has been modified in order to prevent hitting the cache twice in some situation
  • The useBody method in CacheTag has been renamed to setUseBody in order to reflect its usage
  • LoadProperties interface added to CacheProperties
  • Added a NeedsRefreshException
  • Retrofited the changed made by Kesav Kumar in order to retrieve the sessionId correctly
  • Added code toughness to avoid working with invalid parameters in public methods
  • Magic numbers and strings are now declared as constants
  • Many methods are now declared as final or protected
  • Imports are now more accurate, no more *
  • Comments and some headers modified to reflect JavaDoc standard